

package dao;

import entite.DroitUtilisateur;
import java.util.List;
import javax.ejb.Local;


@Local
public interface DroitUtilisateurFacadeLocal {

    /**
     * Méthode de création d'un droit utilisateur
     * @param droitUtilisateur à créer
     */
    void create(DroitUtilisateur droitUtilisateur);

    /**
     * Méthode de modification d'un droit utilisateur
     * @param droitUtilisateur à modifier
     * @return
     */
    DroitUtilisateur edit(DroitUtilisateur droitUtilisateur);

    /**
     * Méthode de suppression d'un droit utilisateur
     * @param droitUtilisateur à supprimer
     */
    void remove(DroitUtilisateur droitUtilisateur);

    /**
     * Méthode pour trouver un droit utilisateur
     * @param id : id à trouver
     * @return droit utilisateur trouvé
     */
    DroitUtilisateur find(Object id);

    /**
     * Méthode pour extraire tous les droits utilisateurs
     * @return Liste des droits utilisateurs
     */
    List<DroitUtilisateur> findAll();

    /**
     * Méthode pour extraire la liste de tous les droits utilisateurs
     * @param range  : tableau d'indice
     * @return Liste des droits utilisateurs
     */
    List<DroitUtilisateur> findRange(int[] range);

    /**
     * Méthode pour compter le nombre de droits utilisateurs
     * @return nombre trouvé
     */
    int count();

}
